package day02;

import ch.qos.logback.core.status.StatusListenerAsList;
import lombok.extern.slf4j.Slf4j;
import utils.Sleeper;

import java.util.concurrent.locks.LockSupport;

/***
 * park: 暂停线程运行
 * unpark： 恢复线程运行
 * unpark: 可以先调用  但是notify和notifyAll不行
 */
@Slf4j
public class TestParkUnpark {
    public static void main(String[] args) {

        // 线程t1
        Thread t1 = new Thread("t1") {
            @Override
            public void run() {
                log.debug("start");
                Sleeper.sleep(2);
                log.debug("park");
                LockSupport.park();
                log.debug("resume");
            }
        };
        t1.start();
        Sleeper.sleep(3);
        LockSupport.unpark(t1);
        log.debug("unpark");
    }
}
